[package]
name = "{{{packageName}}}"
version = "{{#lambdaVersion}}{{{packageVersion}}}{{/lambdaVersion}}"
{{#infoEmail}}
authors = ["{{{.}}}"]
{{/infoEmail}}
{{^infoEmail}}
authors = ["OpenAPI Generator team and contributors"]
{{/infoEmail}}
{{#appDescription}}
description = "{{{.}}}"
{{/appDescription}}
{{#licenseInfo}}
license = "{{.}}"
{{/licenseInfo}}
{{^licenseInfo}}
# Override this license by providing a License Object in the OpenAPI.
license = "Unlicense"
{{/licenseInfo}}
edition = "2021"
{{#publishRustRegistry}}
publish = ["{{.}}"]
{{/publishRustRegistry}}
{{#repositoryUrl}}
repository = "{{.}}"
{{/repositoryUrl}}
{{#documentationUrl}}
documentation = "{{.}}"
{{/documentationUrl}}
{{#homePageUrl}}
homepage = "{{.}}"
{{/homePageUrl}}

[dependencies]
serde = { version = "^1.0", features = ["derive"] }
{{#serdeWith}}
serde_with = { version = "^3.8", default-features = false, features = ["base64", "std", "macros"] }
{{/serdeWith}}
serde_json = "^1.0"
serde_repr = "^0.1"
{{#useSerdePathToError}}
serde_path_to_error = "^0.1"
{{/useSerdePathToError}}
url = "^2.5"
{{#hasUUIDs}}
uuid = { version = "^1.8", features = ["serde", "v4"] }
{{/hasUUIDs}}
{{#hyper}}
{{#hyper0x}}
hyper = { version = "~0.14", features = ["full"] }
hyper-tls = "~0.5"
{{/hyper0x}}
{{^hyper0x}}
hyper = { version = "^1.3.1", features = ["full"] }
hyper-util = { version = "0.1.5", features = ["client", "client-legacy", "http1", "http2"] }
http-body-util = { version = "0.1.2" }
{{/hyper0x}}
http = "~0.2"
base64 = "~0.7.0"
futures = "^0.3"
{{/hyper}}
{{#withAWSV4Signature}}
aws-sigv4 = "0.3.0"
http = "0.2.5"
secrecy = "0.8.0"
{{/withAWSV4Signature}}
{{#reqwest}}
{{^supportAsync}}
reqwest = { version = "^0.12", default-features = false, features = ["json", "blocking", "multipart"] }
{{#supportMiddleware}}
reqwest-middleware = { version = "^0.4", features = ["json", "blocking", "multipart"] }
{{/supportMiddleware}}
{{/supportAsync}}
{{#supportAsync}}
{{#useAsyncFileStream}}
tokio = { version = "^1.46.0", features = ["fs"] }
tokio-util = { version = "^0.7", features = ["codec"] }
reqwest = { version = "^0.12", default-features = false, features = ["json", "multipart", "stream"] }
{{/useAsyncFileStream}}
{{^useAsyncFileStream}}
reqwest = { version = "^0.12", default-features = false, features = ["json", "multipart"] }
{{/useAsyncFileStream}}
{{#supportMiddleware}}
reqwest-middleware = { version = "^0.4", features = ["json", "multipart"] }
{{/supportMiddleware}}
{{#supportTokenSource}}
async-trait = "^0.1"
# TODO: propose to Yoshidan to externalize this as non google related crate, so that it can easily be extended for other cloud providers.
google-cloud-token = "^0.1"
{{/supportTokenSource}}
{{/supportAsync}}

[features]
default = [{{#reqwestDefaultFeatures}}"{{.}}"{{^-last}}, {{/-last}}{{/reqwestDefaultFeatures}}]
native-tls = ["reqwest/native-tls"]
rustls-tls = ["reqwest/rustls-tls"]
{{/reqwest}}
{{#reqwestTrait}}
async-trait = "^0.1"
reqwest = { version = "^0.12", default-features = false, features = ["json", "multipart", "stream"] }
{{#supportMiddleware}}
reqwest-middleware = { version = "^0.4", features = ["json", "multipart"] }
{{/supportMiddleware}}
{{#supportTokenSource}}
# TODO: propose to Yoshidan to externalize this as non google related crate, so that it can easily be extended for other cloud providers.
google-cloud-token = "^0.1"
{{/supportTokenSource}}
{{#mockall}}
mockall = { version = "^0.13", optional = true}
{{/mockall}}
{{#useBonBuilder}}
bon = { version = "2.3", optional = true }
{{/useBonBuilder}}
[features]
default = [{{#reqwestDefaultFeatures}}"{{.}}"{{^-last}}, {{/-last}}{{/reqwestDefaultFeatures}}]
native-tls = ["reqwest/native-tls"]
rustls-tls = ["reqwest/rustls-tls"]
{{#mockall}}
mockall = ["dep:mockall"]
{{/mockall}}
{{#useBonBuilder}}
bon = ["dep:bon"]
{{/useBonBuilder}}
{{/reqwestTrait}}
